home *** CD-ROM | disk | FTP | other *** search
/ PC World Komputer 2010 April / PCWorld0410.iso / hity wydania / Ubuntu 9.10 PL / karmelkowy-koliberek-desktop-9.10-i386-PL.iso / casper / filesystem.squashfs / usr / share / system-config-printer / statereason.pyc (.txt) < prev    next >
Python Compiled Bytecode  |  2009-10-28  |  5KB  |  117 lines

  1. # Source Generated with Decompyle++
  2. # File: in.pyc (Python 2.6)
  3.  
  4.  
  5. _ = lambda x: x
  6.  
  7. def set_gettext_function(fn):
  8.     global _
  9.     _ = fn
  10.  
  11.  
  12. class StateReason:
  13.     REPORT = 1
  14.     WARNING = 2
  15.     ERROR = 3
  16.     LEVEL_ICON = {
  17.         REPORT: 'info',
  18.         WARNING: 'important',
  19.         ERROR: 'error' }
  20.     
  21.     def __init__(self, printer, reason):
  22.         self.printer = printer
  23.         self.reason = reason
  24.         self.level = None
  25.         self.canonical_reason = None
  26.  
  27.     
  28.     def get_printer(self):
  29.         return self.printer
  30.  
  31.     
  32.     def get_level(self):
  33.         if self.level != None:
  34.             return self.level
  35.         if self.reason.endswith('-report') or self.reason == 'connecting-to-device':
  36.             self.level = self.REPORT
  37.         elif self.reason.endswith('-warning'):
  38.             self.level = self.WARNING
  39.         else:
  40.             self.level = self.ERROR
  41.         return self.level
  42.  
  43.     
  44.     def get_reason(self):
  45.         if self.canonical_reason:
  46.             return self.canonical_reason
  47.         level = self.get_level()
  48.         reason = self.reason
  49.         if level == self.WARNING and reason.endswith('-warning'):
  50.             reason = reason[:-8]
  51.         elif level == self.ERROR and reason.endswith('-error'):
  52.             reason = reason[:-6]
  53.         
  54.         self.canonical_reason = reason
  55.         return self.canonical_reason
  56.  
  57.     
  58.     def __repr__(self):
  59.         if self.level == self.REPORT:
  60.             level = 'REPORT'
  61.         elif self.level == self.WARNING:
  62.             level = 'WARNING'
  63.         else:
  64.             level = 'ERROR'
  65.         return '<statereason.StateReason (%s,%s,%s)>' % (level, self.get_printer(), self.get_reason())
  66.  
  67.     
  68.     def get_description(self):
  69.         messages = {
  70.             'toner-low': (_('Toner low'), _("Printer '%s' is low on toner.")),
  71.             'toner-empty': (_('Toner empty'), _("Printer '%s' has no toner left.")),
  72.             'cover-open': (_('Cover open'), _("The cover is open on printer '%s'.")),
  73.             'door-open': (_('Door open'), _("The door is open on printer '%s'.")),
  74.             'media-low': (_('Paper low'), _("Printer '%s' is low on paper.")),
  75.             'media-empty': (_('Out of paper'), _("Printer '%s' is out of paper.")),
  76.             'marker-supply-low': (_('Ink low'), _("Printer '%s' is low on ink.")),
  77.             'marker-supply-empty': (_('Ink empty'), _("Printer '%s' has no ink left.")),
  78.             'offline': (_('Printer off-line'), _("Printer '%s' is currently off-line.")),
  79.             'connecting-to-device': (_('Not connected?'), _("Printer '%s' may not be connected.")),
  80.             'other': (_('Printer error'), _("There is a problem on printer '%s'.")) }
  81.         
  82.         try:
  83.             (title, text) = messages[self.get_reason()]
  84.             
  85.             try:
  86.                 text = text % self.get_printer()
  87.             except TypeError:
  88.                 pass
  89.  
  90.         except KeyError:
  91.             if self.get_level() == self.REPORT:
  92.                 title = _('Printer report')
  93.             elif self.get_level() == self.WARNING:
  94.                 title = _('Printer warning')
  95.             elif self.get_level() == self.ERROR:
  96.                 title = _('Printer error')
  97.             
  98.             text = _("Printer '%s': '%s'.") % (self.get_printer(), self.get_reason())
  99.  
  100.         return (title, text)
  101.  
  102.     
  103.     def get_tuple(self):
  104.         return (self.get_level(), self.get_printer(), self.get_reason())
  105.  
  106.     
  107.     def __cmp__(self, other):
  108.         if other == None:
  109.             return 1
  110.         if other.get_level() != self.get_level():
  111.             return cmp(self.get_level(), other.get_level())
  112.         if other.get_printer() != self.get_printer():
  113.             return cmp(other.get_printer(), self.get_printer())
  114.         return cmp(other.get_reason(), self.get_reason())
  115.  
  116.  
  117.